<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 
<html lang="en">
<head>
  <meta http-equiv="Content-Language" content="en-us">
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <title>C/C++ Project Properties, Discovery Options</title>
  <link rel="stylesheet" type="text/css" href="../help.css">
</head>
<body>

<div role="main"><h1>Discovery Options properties</h1>
<p><img src="../images/icon_warning.gif" alt="Warning">Note that this functionality has been deprecated and not fully supported anymore</p>
<p>Use the <strong>Discovery Options</strong> properties panel to control how information required to build your project is discovered, enhance search and Content Assist functionality, and automatically enhance your makefile, such as include paths and symbol definitions.</p>
<p><img src="../images/mpref_discovopts.png" alt="Discovery options preference page"></p>

<table cellpadding="5" cellspacing="0" border="1" width="700px" bordercolor="#DDDDDD" summary="Discovery Options preference settings">
	<caption><strong>Discovery Options preferences</strong></caption>	
	<colgroup>
		<col width="30%" valign="top" >
		<col width="70%" valign="top" >
	</colgroup>
	<tbody> 
		<tr style="text-align:center;">
			<th id="group"><strong>Group</strong></th>
			<th id="description"><strong>Description</strong></th>
		</tr>
		<tr valign="top" >
			<td valign="top" headers="group"><strong>Configuration</strong></td>
			<td headers="description"><a href="cdt_u_prop_all.htm">Click here for a description.</a></td>
		</tr>
		<tr valign="top" >
			<td valign="top" headers="group"><strong>Manage Configurations...</strong></td>
			<td headers="description"><a href="cdt_u_prop_all.htm">Click here for a description.</a></td>
		</tr>
		<tr valign="top" >
			<td valign="top" headers="group"><strong>Discovery Profiles Scope</strong></td>
			<td headers="description">Specifies the type of profile to set for discovery:
			  <ul>
			    <li><strong>Per Language</strong> - Enables the association of different profiles with different resource types (different tools and input types), to have different settings discovered, e.g. for C and C++ source files and for different tools used by the project.
In addition, selecting this option lets you have different profile settings for different folders; however, only project profile types are allowed.
			    
			    <li><strong>Configuration-wide</strong> - The Eclipse CDT uses only one profile for discovering scanner information for
the entire project (configuration). This means that both the project and per-file discovery profiles are allowed.
			    
			  </ul>			
			
			</td>
		</tr>
		<tr valign="top" >
			<td valign="top" headers="group"><strong>Tools</strong> (language specific list)</td>
			<td headers="description">Shows a list of language specific compilers. Select a language from the list.</td>
		</tr>
		<tr valign="top" >
			<td colspan="2"  headers="group"><strong>Automated discovery of paths and symbols</strong></td>
		</tr>
		<tr valign="top" >
			<td headers="group"><strong>Automate discovery of paths and symbols</strong></td>
			<td headers="description">Scans the build output to populate the path and symbol tables, such as symbol definitions, system include directories, local include directories, macros, and include files.</td>
		</tr>
		<tr valign="top" >
			<td headers="group"><strong>Report path detection problems</strong></td>
			<td headers="description">Sets the notification of diagnostic errors for include paths that the Eclipse CDT is unable to resolve as it parses the build output.</td>
		</tr>
		<tr valign="top" >
			<td headers="group"><strong>Discovery profile</strong></td>
			<td headers="description">Indicates the discovery profile to use for paths and symbol detection. The type of <strong>Configuration</strong> and <strong>Discovery Profile Scope</strong> you specify determine what which <strong>Discovery Profile</strong> options display on this tab.</td>
		</tr>		
		<tr valign="top" >
			<td colspan="2"  headers="group"><strong>Discovery profile options</strong></td>
		</tr>
		<tr valign="top" >
			<td headers="group"><strong>Enable build output scanner info discovery</strong></td>
			<td headers="description">Configures the scanner to parse the output from a build for compiler commands with options that specify the definition of preprocessor symbols, and include search paths (for GCC compiler, -D and -I respectively). This button is only visible when <strong>Configuration</strong> is set to Release and the <strong>Discovery Profiles Scope</strong> is set to <strong>Configuration-wide</strong>.</td>
		</tr>
		<tr valign="top" >
			<td headers="group"><strong>Load build output from file</strong></td>
			<td headers="description">Specifies the name of the file you selected to load the build output from. </td>
		</tr>
		<tr valign="top" >
			<td headers="group"><strong>Load</strong></td>
			<td headers="description">Lets you load a file to discover paths and symbols based on a previous builds' output. To activate the discovery select a build log file and then the <strong>Load</strong> button. This button is only visible when <strong>Configuration</strong> is set to Release and the <strong>Discovery Profiles Scope</strong> is set to <strong>Configuration-wide</strong>.
			<p><strong>Note:</strong> Click <strong>Variables</strong> to open the Select Variables window to define a build output file.</p>
			</td>
		</tr>
		<tr valign="top" >
			<td headers="group"><strong>Browse...</strong></td>
			<td headers="description">Click to locate a previously built output file to load the build output from. This button is only visible when <strong>Configuration</strong> is set to Release and the <strong>Discovery Profiles Scope</strong> is set to <strong>Configuration-wide</strong>.</td>
		</tr>
		<tr valign="top" >
			<td headers="group"><strong>Variables...</strong></td>
			<td headers="description">Click to specify an argument for, or create and configure simple launch variables which you can reference in launch configurations that support variables. This button is only visible when <strong>Configuration</strong> is set to Release and the <strong>Discovery Profiles Scope</strong> is set to <strong>Configuration-wide</strong>.</td>
		</tr>
		<tr valign="top" >
			<td headers="group"><strong>Enable generate scanner info command</strong></td>
			<td headers="description">Enables the retrieval of information from the scanner. If it is not selected, the includes will be populated with default gcc system includes; Eclipse gathers the compiler settings based on the specified toolchain. This means that the Eclipse CDT can obtain the default gcc system includes to associate with the project. 
				<p>When selected, you can specify any required compiler specific commands in the <strong>Compiler invocation command</strong> field.</p>
			</td>
		</tr>
		<tr valign="top" >
			<td headers="group"><strong>Compiler invocation command</strong></td>
			<td headers="description">Indicates the compiler specific command used to invoke the compiler (such as <span class="typewriter">gcc</span>, or more complicated commands used to perform all necessary steps for compiling C/C++ source files into .o files, and linking the object files and libraries into an executable program. For example, the command <strong>gcc -E -P -v hello.c | hello.cpp</strong> reads a compiler's configuration file and prints out information that includes the compiler's internally defined preprocessor symbols and include search paths. The information is complementary to the scanner configuration discovered when the output is parsed (if you've enabled the <strong>Enable build output scanner info discovery</strong> option), and is added to the project's scanner configuration. You can click <strong>Browse</strong> to locate this command, if required.
			
			<p><strong>Note:</strong> The parsing of build output for scanner information is compiler specific. For example, the GNU toolchain compilers (gcc and g++) use -I for include paths, and -D for symbol definitions. Consult your compiler specific documentation for more information about scanner information commands, such as the following gcc commands:</p>
     <ul>
        <li><samp>-D <span style="font-style: italic;">name</span></samp></li>
        <li><samp>-I</samp></li>     
        <li><samp>-U <span style="font-style: italic;">name</span></samp></li>
        <li><samp>-I-</samp></li>
        <li><samp>-nostdinc</samp></li>
        <li><samp>-nostdinc++</samp></li>
        <li><samp>-include <span style="font-style: italic;">file</span></samp></li>
        <li><samp>-imacros <span style="font-style: italic;">file</span></samp></li>
        <li><samp>-idirafter <span style="font-style: italic;">dir</span></samp></li>
        <li><samp>-isystem <span style="font-style: italic;">dir</span></samp></li>
        <li><samp>-iprefix <span style="font-style: italic;">prefix</span></samp></li>
        <li><samp>-iwithprefix <span style="font-style: italic;">dir</span></samp></li>
        <li><samp>-iwithprefixbefore <span style="font-style: italic;">dir</span></samp></li>
      </ul>
	    </td>
		</tr>
		<tr valign="top" >
			<td headers="group"><strong>Browse...</strong></td>
			<td headers="description">Click to browse for a file to include in the compiler invocation command. This button is only visible when <strong>Configuration</strong> is set to Release and the <strong>Discovery Profiles Scope</strong> is set to <strong>Configuration-wide</strong>.</td>
		</tr>
		<tr valign="top" >
			<td headers="group"><strong>Compiler invocation arguments</strong></td>
			<td headers="description">Enter additional arguments to send to the chosen compiler.</td>
		</tr>
  </tbody>
</table>
	
<p><img src="../images/ngref.gif" alt="Related reference"
 width="143" height="21"><br>

<ul>
<li><a href="cdt_o_mproj_pref_macro.htm">Build Project preferences, Macros</a>
<li><a href="cdt_u_prop_resource.htm">Project Properties, Resource page</a>
<li><a href="cdt_u_prop_builders.htm">Project Properties, Builders page</a>
<li><a href="cdt_u_prop_build.htm">Project Properties, C/C++ Build category</a>
   <ul style="list-style-type: disc">
   <li><a href="cdt_u_prop_build_discovery.htm">Discovery options page</a>
   <li><a href="cdt_u_prop_build_environment.htm">Environment page</a>
   <li>Settings page
       <ul> 
       <li><a href="cdt_u_prop_build_settings_tool.htm">     Tool Settings tab</a>
       <li><a href="cdt_u_prop_build_settings_steps.htm">    Build Steps tab</a>
       <li><a href="cdt_u_prop_build_settings_artifact.htm"> Build Artifact tab</a>
       <li><a href="cdt_u_prop_build_settings_binparser.htm">Binary Parsers tab</a>
       <li><a href="cdt_u_prop_build_settings_errparser.htm">Error Parsers tab</a>
       </ul> 
   <li><a href="cdt_u_prop_build_toolchain.htm">Tool chain editor page</a>
   <li><a href="cdt_u_prop_build_variables.htm">Variables page</a>
   </ul>
<li>Project Properties, <a href="cdt_u_prop_general.htm">C/C++ General category</a>
   <ul style="list-style-type: disc"> 
   <li><a href="cdt_u_prop_general_doc.htm">Documentation page</a>
   <li><a href="cdt_u_prop_general_typ.htm">File Types page</a>
   <li><a href="cdt_u_prop_general_idx.htm">Indexer page</a>
   <li><a href="cdt_u_prop_general_lng.htm">Language Mapping page</a>
   <li>Paths and Symbols page
       <ul>
       <li><a href="cdt_u_prop_general_pns_inc.htm">Includes tab</a>
       <li><a href="cdt_u_prop_general_pns_sym.htm">Symbols tab</a>
       <li><a href="cdt_u_prop_general_pns_libpath.htm">Libraries path tab</a>
       <li><a href="cdt_u_prop_general_pns_src.htm">Source Location tab</a>
       <li><a href="cdt_u_prop_general_pns_ref.htm">References tab</a>
       </ul>
   </ul>
<li><a href="cdt_u_prop_ref.htm">C/C++ Project Properties, Project References page</a>
<li><a href="cdt_u_prop_refactoring_history.htm">C/C++ Project Properties, Refactoring History page</a>
<li><a href="cdt_u_prop_rundebug.htm">C/C++ Project Properties, Run/Debug Settings page</a>
</ul>
</p>
<hr >
<p><img src="../images/ng00_04a.gif" ALT="QNX Copyright Statement" ></p>
</div></body>
</html>
